1. Field of the Invention
The present invention relates, in general, to a method and system to be utilized in data processing systems.
2. Description of the Related Art
Data processing systems are systems that manipulate, process, and store data and are notorious within the art. Personal computer systems, and their associated subsystems, constitute well known species of data processing systems. Personal computer systems in general and IBM compatible personal computer systems in particular have attained widespread use for providing computer power to many segments of today""s modem society. A personal computer system can usually be defined as a desk top, floor standing, or portable microcomputer that includes a system unit including but not limited to a system processor and associated volatile and non-volatile memory, a display device, a keyboard, one or more diskette drives, one or more fixed disk storage devices, and one or more data buses for communications between devices. One of the distinguishing characteristics of these systems is the use of a system board to electrically connect these components together. These personal computer systems are information handling systems which are designed primarily to give independent computing power to a single user (or a relatively small group of users in the case of personal computers which serve as computer server systems) and are inexpensively priced for purchase by individuals or small businesses.
A computer system or data-processing system typically includes a system bus. Attached to the system bus are various devices that may communicate locally with each other over the system bus. For example, a typical computer system includes a system bus to which a central processing unit (CPU) is attached and through which the CPU communicates directly with a system memory that is also attached to the system bus.
In addition, the computer system may include a peripheral bus for connecting certain highly integrated peripheral components to the CPU. One such peripheral bus is known as the Peripheral Component Interconnect (PCI) bus. Under the PCI bus standard, peripheral components can directly connect to a PCI bus without the need for glue logic. Thus, PCI is designed to provide a bus standard on which high-performance peripheral devices, such as graphics devices and hard disk drives, can be coupled to the CPU, thereby permitting these high-performance peripheral devices to avoid the general access latency and the band-width constraints that would have occurred if these peripheral devices were connected to a low speed peripheral bus. A few examples of peripheral devices that can communicate with the CPU are isochronous devices, network cards, and printer devices.
Each of the foregoing-referenced data processing system components consume power to perform their functions. As the number of components of a data processing system become more numerous, corresponding power requirements likewise increase.
Power consumption by data processing systems has become a concern in the data processing art. Electric power must be paid for, so power consumption translates to cost. Furthermore, when a device utilizes electric power, it also produces heat, which must be dissipated, and thus power consumption can translate to increased costs associated with environment maintenance. Additionally, in order to dissipate heat fans are often utilized, which result in unwanted and annoying fan noise and which draw power and produce heat. Furthermore, in portable data processing, or computing, systems (e.g., notebook, subnotebook, and palmtop computing devices) the power is typically supplied by batteries, and thus power consumption by the data processing systems becomes even more of a concern.
Previously, power management was primarily performed by the basic input/output system (BIOS) software. However, relatively recently a decision has been made within the industry to migrate to an Operating System Directed Power Management (OSPM) scheme. The primary vehicle by which this migration is being made is the Advanced Configuration and Power Management Interface (ACPI) specification, defined within the Advanced Configuration and Power Interface Specification (Intel, Microsoft, Toshiba Revision 1.0a Nov. 19, 1998), which is incorporated by reference herein in its entirety. OSPM and ACPI both apply to all classes of data processing systems, including desktop, portable, home, and server systems.
The ACPI specification is neither a hardware nor a software specification. Rather, the ACPI specification defines the capabilities and interface requirements of both software and hardware system components in order for those components to be deemed ACPI-compliant. The ACPI specification sets forth the software and hardware components relevant to ACPI and how they relate to each other. The ACPI specification defines the ACPI interfaces between the OS software, the hardware, and BIOS software.
The ACPI specification achieves power management via the use of xe2x80x9cglobal system statesxe2x80x9d, which apply to an entire data processing system, and are visible to the user. The various global system states are labeled G0 through G3 in the ACPI specification, and have various defined power-related attributes.
The ACPI specification gives rise to hope of an industry standard for efficient power management, and thus ACPI-compliant devices are desirable. As has been noted, power consumption is a current concern within the industry, and will likely remain so in the future. Thus, it is apparent that a need exists in the art for a method and system which are ACPI-compliant and provide improved operations of systems using the ACPI specification such as providing even more efficient power management and noise control than that available under the ACPI specification.
It has been discovered that an ACPI-compliant method and system can be produced which will, among other things, provide improved operation of systems utilizing the ACPI specification by allowing such systems to engage in substantially undetectable data processing. The method and system provide data processing systems with an ability to detect a specific event, and enter a background activity state in response to the specific event detected. The specific event detected can be some type of background activity state initiation event, such as a wake event or a time-out event. The entry of a background state in response to the specific event detected can be the initiation of a background routine appropriate to the specific event, such as the initiation of a routine capable of controlling system temperature by passive means.
The foregoing is a summary and thus contains, by necessity, simplifications, generalizations and omissions of detail; consequently, those skilled in the art will appreciate that the summary is illustrative only and is not intended to be in any way limiting. Other aspects, inventive features, and advantages of the present invention, as defined solely by the claims, will become apparent in the non-limiting detailed description set forth below.